package com.zmn.oms.dubbo.dto.common.part;

import lombok.Data;
import lombok.ToString;
import org.dozer.Mapping;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 类描述：
 *
 * @author LiangHailong
 * @date 2019/05/18 17:46
 */
@Data
@ToString
public class FactoryPartDRO implements Serializable {

    private Integer fcOrderPartId;

    /**
     * 工单id
     */
    private Long orderId;

    /**
     * 工程师id
     */
    private Integer masterId;

    /**
     * 工程师姓名
     */
    private String masterName;

    /**
     * 配件来源 1 自购配件 2 厂商配件
     */
    private Integer src;

    /**
     * 配件id
     */
    private Integer partId;

    /**
     * 配件名称
     */
    private String partName;

    /**
     * 配件照片1
     */
    private String imgSrc1;

    /**
     * 配件照片2
     */
    private String imgSrc2;

    /**
     * 配件照片3
     */
    private String imgSrc3;

    /**
     * 配件一级分类Id
     */
    private Integer categOneId;

    /**
     * 配件一级分类名称
     */
    private String categOneName;

    /**
     * 配件二级分类Id
     */
    private Integer categId;

    /**
     * 配件二级分类名称
     */
    private String categName;

    /**
     * 配件名称 （一级分类 - 二级分类 - 三级分类）
     */
    private String partFullName;

    /**
     * 工程师拍照配件图片1
     */
    private String picSrc1;

    /**
     * 工程师拍照配件图片2
     */
    private String picSrc2;

    /**
     * 工程师拍照配件图片3
     */
    private String picSrc3;

    /**
     * 数量
     */
    private BigDecimal number;

    /**
     * 单位
     */
    private String unit;

    /**
     * 单价
     */
    private Long price;

    /**
     * 审核状态 1待审核 2成功 3失败
     */
    private Integer reviewStatus;

    /**
     * 审核时间
     */
    private Date reviewTime;

    /**
     * 审核版本号
     */
    private Integer reviewVersion;

    /**
     * 是否要求旧件返厂：1否 2是
     */
    private Integer retrieve;

    /* OrderFactoryPartPost属性 */
    /**
     * postId
     */
    private Integer postId;

    /**
     * 邮寄业务类型 1 新件邮寄出厂 2 旧件邮寄返厂
     */
    private Integer fcOrderPartPostType;

    /**
     * 厂家寄出配件地址类型：1 寄给用户 2 寄给言而有信公司  （该字段仅fc_order_part_post_type=1时有效）
     */
    private Integer postAddressType;

    /**
     * 邮寄状态 邮寄状态 1 未处理 2 未发货 3 已发货 4 已签收 5 已退货
     */
    private Integer status;

    /**
     * 邮寄地址 （省份+城市+区域 + 详细地址）；\r\n为当时选择地址的快照信息
     */
    private String address;

    /**
     * 收货人名称
     */
    private String consigneeName;

    /**
     * 收货人电话
     */
    private String consigneePhone;

    /**
     * 发货日期 （发货时可只填写发货日期 为预计发货）
     */
    private Date expressTime;

    /**
     * 快递编号
     */
    private String expressCode;

    /**
     * 快递公司
     */
    private String expressCompany;

    /**
     * 快递公司编号
     */
    private String expressCompanyCode;

    /**
     * 1 不指定快递公司 2 指定快递公司；\r\n返厂配件指定快递公司后，服务商必须使用指定快递公司邮寄返厂
     */
    private Integer assignExpressCompany;

    /**
     * 备注
     */
    private String remark;
}
